package com.nfdw.project.vo;

import lombok.*;

import javax.persistence.Column;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class TradePowerAndIncomeInfoVo {

    /**
     * 代理用户用电列表
     */
    TradePowerArrVo tradePowerArrVo;
    /**
     * 平均度电收益列表
     */
    KilowattIncomeArrVo kilowattIncomeArrVo;
    /**
     * 度电收益比平均度电收益情况
     */
    KilowattIncomePercentArrVo kilowattIncomePercentArrVo;

    @Data
    public static class TradePowerVo{
        private String companyType;
        private BigDecimal powerBasisRatio;
        private BigDecimal monTradePower;
        private BigDecimal yearTradEPower;
    }

    @Data
    public static class TradePowerArrVo{
        private ArrayList powerBasisRatioArr;
        private ArrayList monTradePowerArr;
        private ArrayList yearTradEPowerArr;
    }

    @Data
    public static class KilowattIncomeVo{
        private String companyType;
        private BigDecimal monKilowattIncome;
        private BigDecimal yearKilowattIncome;
    }

    @Data
    public static class KilowattIncomeArrVo{
        private ArrayList monKilowattIncomeArr;
        private ArrayList yearKilowattIncomeArr;
    }

    @Data
    public static class KilowattIncomePercentArrVo{
        /**
         * 低于负二十个点 单位：家  度电收益比平均度电收益情况低于-20％
         */
        private ArrayList minusTwentyPercentArr;

        /**
         * 负二十至负十个点 单位：家  度电收益比平均度电收益情况-20%～-10％
         */
        private ArrayList minusTenToTwentyPercentArr;

        /**
         * 二十至十个点 单位：家  度电收益比平均度电收益情况10％～20％
         */
        private ArrayList tenToTwentyPercentArr;

        /**
         * 高于二十个点 单位：家  度电收益比平均度电收益情况高于20%
         */
        private ArrayList twentyPercentArr;
    }

    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    public static class KilowattIncomePercentVo{

        private String companyType;
        /**
         * 低于负二十个点 单位：家  度电收益比平均度电收益情况低于-20％
         */
        private Integer minusTwentyPercent = 0;

        /**
         * 负二十至负十个点 单位：家  度电收益比平均度电收益情况-20%～-10％
         */
        private Integer minusTenToTwentyPercent = 0;

        /**
         * 二十至十个点 单位：家  度电收益比平均度电收益情况10％～20％
         */
        private Integer tenToTwentyPercent = 0;

        /**
         * 高于二十个点 单位：家  度电收益比平均度电收益情况高于20%
         */
        private Integer twentyPercent = 0;
    }

}
